package Graficos;

import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.Icon;




public class Personaje extends JLabel implements Runnable   {
	protected GraficaPersonaje actual;
	protected GraficaPersonaje quietoD;
	protected GraficaPersonaje quietoI;
	protected GraficaPersonaje derecha;
	protected GraficaPersonaje saltoD;
	protected GraficaPersonaje izquierda;
	protected GraficaPersonaje saltoI;
	protected GraficaPersonaje muerto;
	
	public Personaje()
	{
		super();
		
		this.quietoD = new GraficaPersonaje();
		this.quietoD.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/1.gif")) );		
		
		this.quietoI = new GraficaPersonaje();
		this.quietoI.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/1i.gif")) );		
		
 
		this.derecha = new GraficaPersonaje();		
		this.derecha.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/1.gif")) );
		this.derecha.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/2.gif")) );
		

		this.izquierda = new GraficaPersonaje();		
		this.izquierda.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/1i.gif")) );
		this.izquierda.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/2i.gif")) );
		

		this.saltoD = new GraficaPersonaje();
		this.saltoD.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/3.gif")) );
		
		this.saltoI = new GraficaPersonaje();
		this.saltoI.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/3i.gif")) );
		
		this.muerto = new GraficaPersonaje();
		this.muerto.addImage(new ImageIcon( getClass().getClassLoader().getResource("GMario/4.gif")) );		
		
		this.actual = this.quietoD;
		this.setIcon(this.quietoD.getImage());
	}
	
	public void run() {
		while( true ) {
			try
			{
				this.setIcon(this.actual.getImage());
				Thread.sleep(100);
			}
			catch( Exception e )
			{
				System.out.println("Excepcion");
			}
		}		
	}
	
	public void goDerecha()
	{
		this.actual = this.derecha;
	}
	
	public void goQuieto()
	{if (actual==derecha  || actual==saltoD)
		this.actual = this.quietoD;
	else
		this.actual = this.quietoI;
	}

	public void goSalto(){
		if (actual== derecha || actual==quietoD)
			this.actual= this.saltoD;
		else
			this.actual= this.saltoI;
	}
		public void goIzquierda(){
		this.actual=this.izquierda;
	}
		
		public void morir()
		{
			this.actual = this.muerto;
		}
		
	
}
